package com.dljd.javase.t4;

import sun.audio.AudioPlayer;

import java.applet.AudioClip;
import java.util.Scanner;

/*
二维数组的演示案例
 */
public class Array2Demo {

    //二维数组的定义
    public static void test(){
        int[][] nums=new int[3][10];
        nums[0][0]=98;
        nums[0][1]=88;
        nums[0][2]=78;

        int[] nums1[]=new int[10][3];//二维数组可以创建一个对称的矩阵数组

        int[][] num2=new int[5][];//二维数组可以创建一个不对称的矩阵数组

        num2[0]=new int[10];
        num2[1]=new int[20];
        num2[2]=new int[3];

        //二维数组的元素赋值,必须指定两个下标值
        nums[0][0]=98;
        nums[0][1]=88;
        nums[0][2]=78;

        //二维数组创建时初始化数组
        int[][] aaa=new int[][]{  {2,3,4,4,32,34},{2,3,4,34,3},{3,3,3,44}   };

        int[][] bbb={  {2,3,4,4,32,34},{2,3,4,34,3},{3,3,3,44}   };

    }
    //输入三个班级的10个学生的成绩，求总成绩并求平均成绩
    //二维数组的循环赋值和循环取值
    public static void test1(){
        int[][] scores=new int[3][10];
        System.out.println(scores.length);
        Scanner s=new Scanner(System.in);
        for(int hang=0;hang<scores.length;hang++){
            for(int lie=0;lie<scores[hang].length;lie++){
                System.out.println("请输入第"+(hang+1)+"个班级的第"+(lie+1)+"个学生的成绩：");
                scores[hang][lie]=s.nextInt();
            }
        }
        int sum=0;
        for(int n=0;n<scores.length;n++){
            for(int m=0;m<scores[n].length;m++){
                sum+=scores[n][m];
            }
        }
        int all=0;
        //如何计算出二维数组的总元素数量
        for(int n=0;n<scores.length;n++){
            all+=scores[n].length;
        }

        int avg=sum/all;
        System.out.println("总分:"+sum+"-平均分:"+avg);

    }
    //java支持多维数组
    public static void test3(){
        //存储3个班级去年12个月中每个学员的没个月电费
        int[][][]  nums=new int[12][3][30];
        for(int n=0;n<nums.length;n++){
            for(int m=0;m<nums[n].length;m++){
                for(int x=0;x<nums[n][m].length;x++){
                    System.out.println("请输入第"+(n+1)+"个班级中第"+(m+1)+"个月的第"+(x+1)+"个学员的电费");
                }
            }
        }
    }
    public static void main(String[] args) {
//        test1();
        test3();
        /*int[][] num2=new int[5][];//二维数组可以创建一个不对称的矩阵数组

        num2[0]=new int[10];
        num2[1]=new int[20];
        num2[2]=new int[3];
        num2[3]=new int[5];
        num2[4]=new int[2];

        for(int n=0;n<num2.length;n++){
            for(int m=0;m<num2[n].length;m++){
                num2[n][m]=(int)(Math.random()*1000)%100;
            }
        }
        for(int n=0;n<num2.length;n++){
           for(int m:num2[n]){
               System.out.print(m+",");
           }
            System.out.println();
        }
        int all=0;
        for(int n=0;n<num2.length;n++){
            all+=num2[n].length;
        }
        System.out.println(all);
*/

    }
}
